#pragma once
#include "GameWindow.h"
#include "GameButton.h"
#include "GameStaticText.h"
#include "GameCheckBox.h"
#include "GameRadioButton.h"
#include "GameEdit.h"
#include "GameMultiEdit.h"
#include "GameVScrollBar.h"
#include "GameHScrollBar.h"
#include "GameComboBox.h"
#include "GameListBox.h"

class CGameUIWindow :public CGameWindow
{
public:
	CGameUIWindow(void);
	~CGameUIWindow(void);

	void AddToLayout(const string& rkLayoutName,CGameControl* pkControl);
	void DelFromLayout(const string& rkLayoutName,CGameControl* pkControl);

	void ShowLayout(const string& rkLayoutName);
	void HideLayout(const string& rkLayoutName);

	virtual void OnShowLayout(const string& rkLayoutName);
	virtual void OnHideLayout(const string& rkLayoutName);

public:
	virtual bool OnMsgBoxOk(const string& rkName,const string& rkInputText = "");
	virtual bool OnMsgBoxCancel(const string& rkName,const string& rkInputText = "");

private:
	map<string,vector<CGameControl*>> m_akLayout;
};
